package com.zsrt.oa.employee.dao;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

import com.zsrt.common.entity.LeftMenuEntity;
import com.zsrt.oa.dept.entity.DeptEntity;
import com.zsrt.oa.employee.entity.EmployeeEntity;

/**
 * 对employee的操作
 * @author 罗智壕-13424431416
 *
 * 2017年5月24日
 */
public interface EmployeeDao {
	
	/**
	 * 增加1个雇员 
	 * @param entity 传入增加的对象
	 * @return 影响的记录的条数
	 */
	int add(EmployeeEntity entity)  throws SQLException;
	
	/**
	 * 分页查询
	 * @param min 从第几条开始显示
	 * @param max 第几条结束
	 * @return
	 */
	List<EmployeeEntity> query(int pageSize,int curPage,Map<String,Object> map)  throws SQLException;
	
	/**
	 * 员工增加下拉框显示部门
	 * @return
	 */
	List<DeptEntity> deptQuery() throws SQLException;
	
	/**
	 * 员工批量删除
	 * @param entity
	 * @throws SQLException
	 */
	void empDeletebByIds(EmployeeEntity entity) throws SQLException;
	
	/**
	 * 根据id进行查询
	 * @param entity
	 * @throws SQLException
	 */
	void empFindById(EmployeeEntity entity) throws SQLException;
	
	/**
	 * 员工修改
	 * @param entity
	 * @throws SQLException
	 */
	void empUpdate(EmployeeEntity entity) throws SQLException;
	
	/**
	 * 登录校验
	 * @param entity
	 * @return
	 */
	int login(EmployeeEntity entity)  throws SQLException;
	
	/**
	 * 动态生成菜单
	 * @param map
	 * @return
	 */
	List<LeftMenuEntity> leftMenuAppend(Map<String, Object> map)  throws SQLException;
}
